﻿Imports ControladorasAT.SIREOS
Imports ServiciosAT
Imports Utilitarios

Partial Class UserControl_ClienteSede
    Inherits System.Web.UI.UserControl

    Public Sub limpiarCampos()
        Listas.listarRegiones(ddlbRegion)
        Listas.ListarProvincias(ddlbProvincia, ddlbRegion.SelectedValue)
        Listas.listarDistritos(ddlbDistrito, ddlbRegion.SelectedValue, ddlbProvincia.SelectedValue)
        txbSede.Text = Valores.vacio
        txbDireccion.Text = Valores.vacio
        LblCodigoSede.Text = Valores.vacio
        txbTelefono.Text = Valores.vacio
        txbAnexo.Text = Valores.vacio
        txbCelular.Text = Valores.vacio
        LblCodigoCliente.Text = Session("CodigoCliente")
    End Sub

    Public Sub cargarDatosSede()
        limpiarCampos()
        LblCodigoSede.Text = Session("CodigoSede")
        If LblCodigoSede.Text <> Valores.vacio Then
            Dim oSede As New SireosWSCliente.Sede
            oSede.codSede = LblCodigoSede.Text
            Dim oCtCliente As New CtCliente
            Dim oSedeBE As SireosWSCliente.Sede = CType(oCtCliente.cargarDatosCliente(oSede), SireosWSCliente.Sede)
            If Not (oSedeBE Is Nothing) Then
                txbSede.Text = oSedeBE.nomSede
                txbDireccion.Text = oSedeBE.dirSede
                txbTelefono.Text = oSedeBE.telSede
                txbCelular.Text = oSedeBE.celSede
                txbAnexo.Text = oSedeBE.aneSede
                txbCorreo1.Text = oSedeBE.correo1
                txbCorreo2.Text = oSedeBE.correo2
                ddlbRegion.SelectedValue = oSedeBE.ubigeo.codDepartamento
                Listas.ListarProvincias(ddlbProvincia, ddlbRegion.SelectedValue)
                ddlbProvincia.SelectedValue = oSedeBE.ubigeo.codProvincia
                Listas.listarDistritos(ddlbDistrito, ddlbRegion.SelectedValue, ddlbProvincia.SelectedValue)
                ddlbDistrito.SelectedValue = oSedeBE.codUbigeo
            End If
        End If
        Session("CodigoSede") = Valores.vacio
    End Sub

    Private Function validarCampos() As Boolean
        If txbSede.Text = Valores.vacio Then
            Valores.mensajevar = Mensajes.ingresarSede
            Return False
        ElseIf txbDireccion.Text = Valores.vacio Then
            Valores.mensajevar = Mensajes.ingresarDireccion
            Return False
        ElseIf ddlbRegion.SelectedValue = Valores.numero.Cero Then
            Valores.mensajevar = Mensajes.seleccionarRegion
            Return False
        ElseIf ddlbProvincia.SelectedValue = Valores.numero.Cero Then
            Valores.mensajevar = Mensajes.seleccionarProvincia
            Return False
        ElseIf ddlbDistrito.SelectedValue = Valores.numero.Cero Then
            Valores.mensajevar = Mensajes.seleccionarDistrito
            Return False
        Else
            Return True
        End If
    End Function

    Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
        If Not Page.IsPostBack Then
            Listas.listarRegiones(ddlbRegion)
            Listas.ListarProvincias(ddlbProvincia, ddlbRegion.SelectedValue)
            Listas.listarDistritos(ddlbDistrito, ddlbRegion.SelectedValue, ddlbProvincia.SelectedValue)
        End If
    End Sub

    Protected Sub ddlbRegion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ddlbRegion.SelectedIndexChanged
        Listas.ListarProvincias(ddlbProvincia, ddlbRegion.SelectedValue)
    End Sub

    Protected Sub ddlbProvincia_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ddlbProvincia.SelectedIndexChanged
        Listas.listarDistritos(ddlbDistrito, ddlbRegion.SelectedValue, ddlbProvincia.SelectedValue)
    End Sub

    Protected Sub ibtnGrabar_Click(sender As Object, e As ImageClickEventArgs) Handles ibtnGrabar.Click
        If validarCampos() = True Then
            Dim oSedeBE As New SireosWSCliente.Sede
            oSedeBE.codCliente = LblCodigoCliente.Text
            oSedeBE.codUbigeo = ddlbDistrito.SelectedValue
            oSedeBE.nomSede = txbSede.Text
            oSedeBE.dirSede = txbDireccion.Text
            oSedeBE.telSede = txbTelefono.Text
            oSedeBE.aneSede = txbAnexo.Text
            oSedeBE.celSede = txbCelular.Text
            oSedeBE.correo1 = txbCorreo1.Text
            oSedeBE.correo2 = txbCorreo2.Text
            oSedeBE.usuRegistro = Session("CodigoUsuario")

            Dim oCtCliente As New CtCliente
            If LblCodigoSede.Text = Valores.vacio Then
                Dim retor As Integer = oCtCliente.registrarSede(oSedeBE)
                If retor > 0 Then
                    LblCodigoSede.Text = retor
                    Helper.mensajeControl(Me, Mensajes.correctoGrabado)
                    Session("CodigoSede") = LblCodigoSede.Text
                Else
                    Helper.mensajeControl(Me, Mensajes.errorGrabar)
                End If
            Else
                oSedeBE.codSede = LblCodigoSede.Text
                oCtCliente.modificarSede(oSedeBE)
                Session("CodigoSede") = LblCodigoSede.Text
                Helper.mensajeControl(Me, Mensajes.correctoModificado)
            End If
        Else
            Helper.mensajeControl(Me, Valores.mensajevar)
        End If
    End Sub

End Class
